﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace Apps.Common
{
    // 统一返回数据结构类
    public class ApiResponse<T>
    {
        // 状态码，例如 200 表示成功，400 表示客户端错误，500 表示服务器错误
        public int StatusCode { get; set; }
        // 消息，用于描述接口调用的结果信息
        public string Message { get; set; }
        // 实际返回的数据
        public T Data { get; set; }

        // 构造函数，用于初始化成功响应
        public ApiResponse(int statusCode, string message, T data)
        {
            StatusCode = statusCode;
            Message = message;
            Data = data;
        }

        // 静态方法，用于创建成功响应
        public static ApiResponse<T> Success(T data, string message = "操作成功")
        {
            return new ApiResponse<T>(200, message, data);
        }

        // 静态方法，用于创建失败响应
        public static ApiResponse<T> Error(int statusCode, string message)
        {
            return new ApiResponse<T>(statusCode, message, default);
        }

       
    }
}
